From f7cc8cbb77f5cb70c0caf24245f25f6daea83051 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 5 Nov 2004 15:58:36 +0000 Subject: [PATCH] Don't unnecessarily call gtk_menu_position(), since that function has 2004-11-05 Matthias Clasen * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily call gtk_menu_position(), since that function has issues when called on a menu whose parent is unrealized. (#157354, Adam Hooper) --- ChangeLog | 5 +++++ ChangeLog.pre-2-10 | 5 +++++ ChangeLog.pre-2-6 | 5 +++++ ChangeLog.pre-2-8 | 5 +++++ gtk/gtkmenu.c | 8 +++++++- 5 files changed, 27 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index f06b938c1c..a2699eca1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2004-11-05 Matthias Clasen + * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily + call gtk_menu_position(), since that function has issues + when called on a menu whose parent is unrealized. (#157354, + Adam Hooper) + * gtk/gtkmain.c: Document new functions. 2004-11-04 Matthias Clasen diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index f06b938c1c..a2699eca1d 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,5 +1,10 @@ 2004-11-05 Matthias Clasen + * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily + call gtk_menu_position(), since that function has issues + when called on a menu whose parent is unrealized. (#157354, + Adam Hooper) + * gtk/gtkmain.c: Document new functions. 2004-11-04 Matthias Clasen diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index f06b938c1c..a2699eca1d 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,5 +1,10 @@ 2004-11-05 Matthias Clasen + * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily + call gtk_menu_position(), since that function has issues + when called on a menu whose parent is unrealized. (#157354, + Adam Hooper) + * gtk/gtkmain.c: Document new functions. 2004-11-04 Matthias Clasen diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index f06b938c1c..a2699eca1d 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,5 +1,10 @@ 2004-11-05 Matthias Clasen + * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily + call gtk_menu_position(), since that function has issues + when called on a menu whose parent is unrealized. (#157354, + Adam Hooper) + * gtk/gtkmain.c: Document new functions. 2004-11-04 Matthias Clasen diff --git a/gtk/gtkmenu.c b/gtk/gtkmenu.c index 5688080be1..3dd53c8fa8 100644 --- a/gtk/gtkmenu.c +++ b/gtk/gtkmenu.c @@ -980,6 +980,12 @@ menu_change_screen (GtkMenu *menu, { GtkMenuPrivate *private = gtk_menu_get_private (menu); + if (gtk_widget_has_screen (menu)) + { + if (new_screen == gtk_widget_get_screen (menu)) + return; + } + if (menu->torn_off) { gtk_window_set_screen (GTK_WINDOW (menu->tearoff_window), new_screen); @@ -1705,7 +1711,7 @@ gtk_menu_set_tearoff_hints (GtkMenu *menu, geometry_hints.max_width = width; geometry_hints.min_height = 0; - geometry_hints.max_height = GTK_WIDGET (menu)->requisition.height; + geometry_hints.max_height = GTK_WIDGET (menu)->requisition.height + 10; gtk_window_set_geometry_hints (GTK_WINDOW (menu->tearoff_window), NULL, -- 2.30.2